/*
 * $Id: mstring.c,v 1.31 2006-04-06 16:25:37 bacon Exp $
 */

#include <xp/bas/mstring.h>

#define xp_char_t xp_mchar_t
#define xp_cint_t xp_mcint_t

#undef XP_CHAR
#undef XP_TEXT

#define XP_CHAR(x) XP_MCHAR(x)
#define XP_TEXT(x) XP_MTEXT(x)

#define XP_STRFNMAT_PATHNAME XP_MSTRFNMAT_PATHNAME
#define XP_STRFNMAT_NOESCAPE XP_MSTRFNMAT_NOESCAPE 
#define XP_STRFNMAT_PERIOD   XP_MSTRFNMAT_PERIOD  
#define XP_STRFNMAT_CASEFOLD XP_MSTRFNMAT_CASEFOLD

#define xp_isupper    xp_misupper
#define xp_islower    xp_mislower
#define xp_isalpha    xp_misalpha
#define xp_isdigit    xp_misdigit
#define xp_isxdigit   xp_misxdigit
#define xp_isalnum    xp_misalnum
#define xp_isspace    xp_misspace
#define xp_isprint    xp_misprint
#define xp_isgraph    xp_misgraph
#define xp_iscntrl    xp_miscntrl
#define xp_ispunct    xp_mispunct
#define xp_tolower    xp_mtolower
#define xp_toupper    xp_mtoupper

#define xp_strlen     xp_mstrlen
#define xp_strsize    xp_mstrsize 
#define xp_strlenn    xp_mstrlenn
#define xp_strsizen   xp_mstrsizen

#define xp_strset     xp_mstrset
#define xp_strxset    xp_mstrxset

#define xp_strcpy     xp_mstrcpy
#define xp_strcpyn    xp_mstrcpyn
#define xp_strncpy    xp_mstrncpy
#define xp_strxcpy    xp_mstrxcpy
#define xp_strxncpy   xp_mstrxncpy

#define xp_strcat     xp_mstrcat
#define xp_strcatn    xp_mstrcatn
#define xp_strncat    xp_mstrncat
#define xp_strxcat    xp_mstrxcat
#define xp_strxncat   xp_mstrxncat
#define xp_strxapp    xp_mstrxapp
#define xp_strxappv   xp_mstrxappv
#define xp_strxcap    xp_mstrxcap
#define xp_strxcapv   xp_mstrxcapv

#define xp_strcmp     xp_mstrcmp 
#define xp_strcmpn    xp_mstrcmpn
#define xp_strxcmp    xp_mstrxcmp 
#define xp_strxncmp   xp_mstrxncmp 
#define xp_strcasecmp xp_mstrcasecmp
#define xp_strcasecmpn xp_mstrcasecmpn
#define xp_strncasecmp xp_mstrncasecmp
#define xp_strxcasecmp xp_mstrxcasecmp
#define xp_strxncasecmp xp_mstrxncasecmp

#define xp_strstr     xp_mstrstr
#define xp_strxstr    xp_mstrxstr
#define xp_strxnstr   xp_mstrxnstr

#define xp_strrstr    xp_mstrrstr
#define xp_strxrstr   xp_mstrxrstr
#define xp_strxnrstr  xp_mstrxnrstr

#define xp_strchr     xp_mstrchr
#define xp_strxchr    xp_mstrxchr
#define xp_strrchr    xp_mstrrchr
#define xp_strxrchr   xp_mstrxrchr

#define xp_strpbrk    xp_mstrpbrk 
#define xp_strxpbrk   xp_mstrxpbrk
#define xp_strnpbrk   xp_mstrnpbrk
#define xp_strxnpbrk  xp_mstrxnpbrk

#define xp_strrpbrk   xp_mstrrpbrk
#define xp_strxrpbrk  xp_mstrxrpbrk
#define xp_strnrpbrk  xp_mstrnrpbrk 
#define xp_strxnrpbrk xp_mstrxnrpbrk

#define xp_strspn     xp_mstrspn 
#define xp_strxspn    xp_mstrxspn
#define xp_strnspn    xp_mstrnspn 
#define xp_strxnspn   xp_mstrxnspn 

#define xp_strcspn    xp_mstrcspn 
#define xp_strxcspn   xp_mstrxcspn
#define xp_strncspn   xp_mstrncspn 
#define xp_strxncspn  xp_mstrxncspn 

#define xp_strrev     xp_mstrrev
#define xp_strxrev    xp_mstrxrev
#define xp_strrot     xp_mstrrot
#define xp_strxrot    xp_mstrxrot

#define xp_strdup     xp_mstrdup
#define xp_strxdup    xp_mstrxdup
#define xp_strxdup2   xp_mstrxdup2

#define xp_strdel     xp_mstrdel
#define xp_strxdel    xp_mstrxdel
#define xp_strrmchr   xp_mstrrmchr
#define xp_strxrmchr  xp_mstrxrmchr

#define xp_stristype  xp_mstristype
#define xp_strxistype xp_mstrxistype

#define xp_strupr xp_mstrupr
#define xp_strxupr xp_mstrxupr
#define xp_strlwr xp_mstrlwr
#define xp_strxlwr xp_mstrxlwr

#define xp_strtrm xp_mstrtrm
#define xp_strxtrm xp_mstrxtrm
#define xp_strpac xp_mstrpac
#define xp_strxpac xp_mstrxpac

#define xp_strtok xp_mstrtok
#define xp_strxtok xp_mstrxtok

#define xp_strspl xp_mstrspl
#define xp_strspls xp_mstrspls

#define xp_strfnmat xp_mstrfnmat
#define xp_strxfnmat xp_mstrxfnmat
#define xp_strnfnmat xp_mstrnfnmat
#define xp_strxnfnmat xp_mstrxnfnmat

#define xp_strtodn xp_mstrtodn
#define xp_strxtodn xp_mstrxtodn
#define xp_strfromdn xp_mstrfromdn
#define xp_strxfromdn xp_mstrxfromdn

#define xp_vstr_t xp_mvstr_t
#define xp_vstr_open xp_mvstr_open
#define xp_vstr_close xp_mvstr_close
#define xp_vstr_clear xp_mvstr_clear
#define xp_vstr_append xp_mvstr_append

#define __MSTRING
#include <xp/bas/string.c>
#include <xp/bas/string_size.c>
#include <xp/bas/string_fill.c>
#include <xp/bas/string_copy.c>
#include <xp/bas/string_concat.c>
#include <xp/bas/string_compar.c>
#include <xp/bas/string_search.c>
#include <xp/bas/string_rotate.c>
#include <xp/bas/string_dup.c>
#include <xp/bas/string_ctype.c>
#include <xp/bas/string_strfnmat.c>
#include <xp/bas/string_strspl.c>
#include <xp/bas/string_strtodn.c>
#include <xp/bas/string_strtok.c>
#include <xp/bas/string_strvec.c>
